package net.showcal.api.request.mobile;

import com.alibaba.fastjson.JSON;

import net.showcal.api.ApiRuleException;
import net.showcal.api.XiniuRequest;
import net.showcal.api.domain.mobile.VerificationTypeEnum;
import net.showcal.api.internal.util.XiniuHashMap;
import net.showcal.api.response.mobile.VerificationCodeCreateResponse;

import java.util.Map;



/**
* <p/>
*
<pre>
 * ***************************************************************
 *  Copyright (c) 2014 –瘦咖网络科技有限公司
    *  Title: com.showcal.platform.helper.PlatformHelperImpl
    *  Description: platform Request
    *  @since
    *  @author kevin
    * ***************************************************************
 * </pre>
*/
public class VerificationCodeCreateRequest implements XiniuRequest<VerificationCodeCreateResponse> {
private XiniuHashMap udfParams = new XiniuHashMap();
/**
* 获取API名称
*/
@Override
public String getApiMethodName() {
return "platformervice.verificationCode.create";
}

    /**
    * 用户ID
    */
    private Long userId;
    /**
    * 承租人ID
    */
    private Long tenantId;
    /**
    * 对象
    */
    private String object;
    /**
    * 存活时间(单位分钟)
    */
    private Integer liveTime;
    /**
    * 验证类型
    */
    private VerificationTypeEnum verificationType;

    public Long getUserId(){
    return userId;
    }

    public void setUserId(Long userId){
    this.userId=userId;
    }

    public Long getTenantId(){
    return tenantId;
    }

    public void setTenantId(Long tenantId){
    this.tenantId=tenantId;
    }

    public String getObject(){
    return object;
    }

    public void setObject(String object){
    this.object=object;
    }

    public Integer getLiveTime(){
    return liveTime;
    }

    public void setLiveTime(Integer liveTime){
    this.liveTime=liveTime;
    }

    public VerificationTypeEnum getVerificationType(){
    return verificationType;
    }

    public void setVerificationType(VerificationTypeEnum verificationType){
    this.verificationType=verificationType;
    }

@Override
public Map<String, String> getTextParams() {
XiniuHashMap txtParams = new XiniuHashMap();
        txtParams.put("userId", this.userId);
        txtParams.put("tenantId", this.tenantId);
        txtParams.put("object", this.object);
        txtParams.put("liveTime", this.liveTime);
        txtParams.put("verificationType", this.verificationType.toString());
if(this.udfParams != null) {
txtParams.putAll(this.udfParams);
}
return txtParams;
}

@Override
public Long getTimestamp() {
return null;
}

@Override
public void setTimestamp(Long timestamp) {

}

@Override
public Class getResponseClass() {
return VerificationCodeCreateResponse.class;
}

@Override
public void check() throws ApiRuleException {
}

@Override
public Map
<String, String> getHeaderMap() {
return null;
}

@Override
public void putOtherTextParam(String key, String value) {
this.udfParams.put(key,value);
}


}